1.0: Pengantar Android
Materi:
- Apa yang dimaksud dengan Android?
- Mengapa mengembangkan aplikasi untuk Android?
- Versi Android
- Tantangan development aplikasi Android
- Ketahui selengkapnya
Apa yang dimaksud dengan Android?
Android adalah sistem operasi dan platform pemrograman yang dikembangkan oleh Google untuk ponsel cerdas dan perangkat seluler lainnya (seperti tablet). Android bisa berjalan di beberapa macam perangkat dari banyak produsen yang berbeda. Android menyertakan kit development perangkat lunak untuk penulisan kode asli dan perakitan modul perangkat lunak untuk membuat aplikasi bagi pengguna Android. Android juga menyediakan pasar untuk mendistribusikan aplikasi. Secara keseluruhan, Android menyatakan ekosistem untuk aplikasi seluler.
Mengapa mengembangkan aplikasi untuk Android?
Aplikasi dikembangkan untuk berbagai alasan: menjawab kebutuhan bisnis, membangun layanan baru, membuat bisnis baru, dan menyediakan game serta jenis materi lainnya untuk pengguna. Developer memilih untuk mengembangkan bagi Android agar bisa menjangkau sebagian besar pengguna perangkat seluler.
Platform paling populer untuk aplikasi seluler
Sebagai platform perangkat seluler paling populer di dunia, Android mendukung ratusan juta perangkat seluler di lebih dari 190 negara di seluruh dunia. Android memiliki basis pemasangan terbesar dari platform seluler apa pun dan masih tumbuh dengan cepat. Setiap hari, jutaan pengguna lain menyalakan perangkat Android mereka untuk pertama kalinya dan mulai mencari aplikasi, game, dan materi digital lainnya.
Pengalaman terbaik untuk pengguna aplikasi
Android menyediakan antarmuka pengguna (UI) layar sentuh untuk berinteraksi dengan aplikasi. Antarmuka pengguna Android sebagian besar berdasarkan pada manipulasi langsung, menggunakan isyarat sentuhan seperti menggesek, mengetuk, dan mencubit untuk memanipulasi objek di layar. Selain keyboard, ada keyboard virtual yang bisa disesuaikan untuk masukan teks. Android juga bisa mendukung pengontrol game dan keyboard fisik berukuran penuh yang dihubungkan dengan Bluetooth atau USB.
Layar utama Android bisa berisi sejumlah laman ikon aplikasi, yang akan meluncurkan aplikasi terkait, dan widget, dengan menampilkan materi langsung yang diperbarui secara otomatis seperti cuaca, kotak masuk email pengguna, atau ticker berita. Android juga bisa memutar materi multimedia seperti musik, animasi, dan video. Gambar di atas menampilkan ikon aplikasi pada layar utama (kiri), musik yang diputar (tengah), dan widget yang ditampilkan (kanan). Sepanjang bagian atas layar terdapat bilah status, yang menampilkan informasi tentang perangkat dan konektivitasnya. Layar utama Android bisa terdiri dari sejumlah laman, yang bisa digesek mundur dan maju oleh pengguna.
Android didesain untuk menyediakan respons cepat terhadap masukan pengguna. Selain antarmuka sentuh yang berubah-ubah, kemampuan getaran perangkat Android bisa menyediakan umpan balik sentuhan. Perangkat keras internal seperti akselerometer, giroskop, dan sensor kedekatan, digunakan oleh banyak aplikasi untuk merespons tindakan pengguna tambahan. Sensor tersebut bisa mendeteksi rotasi layar dari potret ke lanskap untuk tampilan yang lebih lebar atau sensor bisa memungkinkan pengguna untuk menyetir kendaraan virtual dengan memutar perangkat seolah-olah setir mobil.
Platform Android, berdasarkan pada kernel Linux, terutama didesain untuk perangkat seluler layar sentuh seperti ponsel cerdas dan tablet. Karena perangkat Android biasanya bertenaga baterai, Android didesain untuk mengelola proses guna menjaga konsumsi daya tetap minimum, sehingga menyediakan penggunaan baterai lebih lama.
Mudah mengembangkan aplikasi
Gunakan Android Software Development Kit (SDK) Android untuk mengembangkan aplikasi yang memanfaatkan UI dan sistem operasi Android. SDK terdiri dari serangkaian alat development menyeluruh yang menyertakan debugger, pustaka perangkat lunak kode pratulis, emulator perangkat, dokumentasi, kode contoh, dan tutorial. Gunakan alat-alat ini untuk membuat aplikasi yang terlihat hebat dan manfaatkan kemampuan perangkat keras yang tersedia di setiap perangkat.
Untuk mengembangkan aplikasi menggunakan SDK, gunakan bahasa pemrograman Java untuk mengembangkan aplikasi dan file Extensible Markup Language (XML) untuk menjelaskan sumber daya data. Dengan menulis kode di Java dan membuat biner aplikasi tunggal, Anda akan memiliki aplikasi yang bisa berjalan pada faktor bentuk ponsel dan tablet. Anda bisa mendeklarasikan UI dalam rangkaian sumber daya XML ringan, satu rangkaian untuk bagian UI yang umum bagi semua faktor bentuk, dan rangkaian lain untuk fitur yang khusus bagi ponsel atau tablet. Pada waktu proses, Android menerapkan rangkaian sumber daya yang tepat berdasarkan ukuran layar, kepadatan, lokal, dan sebagainya.
Untuk membantu Anda mengembangkan aplikasi secara efisien, Google menawarkan Lingkungan Development Terintegrasi (IDE) Java lengkap yang disebut Android Studio, dengan fitur lanjutan untuk pengembangan, debug, dan pemaketan aplikasi Android. Dengan menggunakan Android Studio, Anda bisa mengembangkan perangkat Android yang tersedia, atau membuat perangkat virtual yang mengemulasikan konfigurasi perangkat keras apa pun.
Android menyediakan arsitektur development yang kaya. Anda tidak perlu mengetahui banyak tentang komponen arsitektur ini, namun perlu mengetahui apa yang tersedia dalam sistem yang digunakan untuk aplikasi Anda. Diagram berikut menampilkan komponen utama sistem tumpukan Android — sistem operasi dan arsitektur development.
Dalam gambar di atas:
- Aplikasi: Aplikasi berada pada tingkat ini, bersama dengan aplikasi sistem inti untuk email, perpesanan SMS, kalender, penjelajahan Internet, atau kontak.
- Kerangka Kerja API Java: Semua fitur Android tersedia untuk developer melalui antarmuka pemograman aplikasi (API) yang ditulis dalam bahasa Java. Anda tidak perlu mengetahui detail semua API untuk mempelajari cara mengembangkan aplikasi Android, namun Anda bisa mengetahui selengkapnya tentang API berikut ini, yang berguna untuk membuat aplikasi:
- Sistem Tampilan digunakan untuk membangun UI aplikasi, termasuk daftar, tombol, dan menu.
- Pengelola Referensi digunakan untuk mengakses sumber daya non-kode seperti string, grafik, dan file layout yang dilokalkan.
- Pengelola Notifikasi digunakan untuk menampilkan peringatan khusus di bilah status.
- Pengelola Aktivitas yang mengelola daur hidup aplikasi.
- Penyedia Materi yang memungkinkan aplikasi untuk mengakses data dari aplikasi lain.
- Semua API kerangka kerja yang digunakan aplikasi sistem Android.
- Pustaka dan Waktu Proses Android:Setiap aplikasi berjalan dalam prosesnya sendiri dan dengan instance Android Runtime sendiri, yang memungkinkan beberapa mesin sekaligus virtual pada perangkat bermemori rendah. Android juga menyertakan rangkaian pustaka waktu proses inti yang menyediakan sebagian besar fungsionalitas bahasa pemrograman Java, termasuk beberapa fitur bahasa Java 8 yang digunakan kerangka kerja Java API. Banyak layanan dan komponen sistem Android inti dibangun dari kode asli yang memerlukan pustaka asli yang ditulis dalam C dan C++. Pustaka asli tersebut tersedia untuk aplikasi melalui kerangka kerja Java API.
- Hardware Abstraction Layer (HAL): Lapisan ini menyediakan antarmuka standar yang menunjukkan kemampuan perangkat keras di perangkat ke kerangka kerja Java API yang lebih tinggi. HAL terdiri atas beberapa modul pustaka, masing-masing mengimplementasikan antarmuka untuk komponen perangkat keras tertentu, seperti modul kamera atau bluetooth.
- Kernel Linux: Fondasi platform Android adalah kernel Linux. Lapisan di atas mengandalkan kernel Linux untuk fungsionalitas pokok seperti threading dan manajemen memori tingkat rendah. Menggunakan kernel Linux memungkinkan Android memanfaatkan fitur keamanan utama dan memungkinkan produsen perangkat mengembangkan driver perangkat keras untuk kernel yang cukup dikenal.
Banyak opsi distribusi
Anda bisa mendistribusikan aplikasi Android dalam banyak cara: email, situs web, atau pasar aplikasi seperti Google Play. Pengguna Android mengunduh jutaan aplikasi dan game dari Google Play store setiap bulan (ditampilkan dalam gambar di bawah ini). Google Play adalah layanan distribusi digital, yang dioperasikan dan dikembangkan oleh Google, yang berfungsi sebagai toko aplikasi resmi untuk Android, yang memungkinkan konsumen menjelajah dan mengunduh aplikasi yang dikembangkan dengan Android SDK dan dipublikasikan melalui Google.
Versi Android
Google menyediakan peningkatan versi bertahap utama untuk sistem operasi Android setiap enam hingga sembilan bulan, menggunakan nama bertema makanan. Rilis utama yang terbaru adalah Android 7.0 "Nougat".
Nama kode |
Nomor versi |
Tanggal rilis awal |
API level |
N/A |
1.0 |
23 September 2008 |
1 |
N/A |
1.1 |
9 Februari 2009 |
2 |
1.5 |
27 April 2009 |
3 |
|
|
1.6 |
15 September 2009 |
4 |
|
2.0 – 2.1 |
26 Oktober 2009 |
5–7 |
|
2.2 – 2.2.3 |
20 Mei 2010 |
8 |
|
2.3 – 2.3.7 |
6 Desember 2010 |
9–10 |
|
3.0 – 3.2.6 |
22 Februari 2011 |
11–13 |
|
4.0 – 4.0.4 |
18 Oktober 2011 |
14–15 |
|
4.1 – 4.3.1 |
9 Juli 2012 |
16–18 |
|
4.4 – 4.4.4 |
31 Oktober 2013 |
19–20 |
|
5.0 – 5.1.1 |
12 November 2014 |
21–22 |
|
6.0 – 6.0.1 |
5 Oktober 2015 |
23 |
|
7.0 |
22 Agustus 2016 |
24 |
Lihat versi sebelumnya dan fiturnya dalam Cerita Android.
Dasbor untuk Versi Platform diperbarui secara berkala untuk menampilkan distribusi perangkat aktif yang menjalankan setiap versi Android, berdasarkan jumlah perangkat yang mengunjungi Google Play Store. Mendukung sekitar 90% perangkat aktif adalah praktik yang baik, sekaligus menargetkan aplikasi Anda ke versi terbaru.
Tantangan development aplikasi Android
Sewaktu platform Android menyediakan fungsionalitas kaya untuk development aplikasi, masih ada sejumlah tantangan yang perlu Anda tangani, seperti:
- Membangun untuk dunia multilayar
- Mendapatkan kinerja yang tepat
- Membuat kode dan pengguna Anda tetap aman
- Tetap kompatibel dengan versi platform yang lebih lama
- Memahami pasar dan pengguna.
Membangun untuk dunia multilayar
Android berjalan pada miliaran perangkat genggam di seluruh dunia, dan mendukung beragam faktor bentuk termasuk perangkat yang dapat dikenakan dan televisi. Perangkat bisa tersedia dalam ukuran dan bentuk berbeda yang memengaruhi desain layar untuk elemen UI di aplikasi Anda.
Sebagai tambahan, produsen perangkat mungkin menambahkan elemen UI, gaya, dan warna sendiri untuk membedakan produk mereka. Setiap produsen menawarkan fitur berbeda dalam hal bentuk keyboard, ukuran layar, atau tombol kamera. Aplikasi yang berjalan pada satu perangkat mungkin terlihat sedikit berbeda di perangkat lain. Tantangan bagi sebagian besar developer adalah untuk mendesain elemen UI yang bisa bekerja di semua perangkat Selain itu, developer juga bertanggung jawab untuk menyediakan sumber daya aplikasi seperti ikon, logo, grafik lain, dan gaya teks untuk mempertahankan keseragaman penampilan di seluruh perangkat yang berbeda.
Memaksimalkan kinerja aplikasi
Kinerja aplikasi, seberapa cepat aplikasi berjalan, seberapa mudah aplikasi menghubungkan ke jaringan, dan seberapa baik aplikasi mengelola baterai dan penggunaan memori, dipengaruhi oleh beberapa faktor seperti daya tahan baterai, materi multimedia, dan akses Internet. Anda harus memperhatikan batasan tersebut dan menulis kode sedemikian rupa sehingga penggunaan sumber daya diseimbangkan dan didistribusikan secara optimal. Misalnya, Anda harus menyeimbangkan layanan latar belakang dengan mengaktifkannya hanya jika perlu; hal ini akan menghemat daya tahan baterai perangkat pengguna.
Membuat kode dan pengguna Anda tetap aman
Anda perlu melakukan tindakan pencegahan untuk mengamankan kode dan pengalaman pengguna saat menggunakan aplikasi. Gunakan alat seperti ProGuard (disediakan di Android Studio), yang mendeteksi dan membuang kelas, bidang, metode, dan atribut yang tidak digunakan serta mengenkripsi semua kode dan sumber daya aplikasi sewaktu memaketkan aplikasi. Untuk melindungi informasi penting milik pengguna seperti proses masuk dan sandi, Anda harus mengamankan saluran komunikasi untuk melindungi data yang bergerak (di Internet) serta data yang tidak bergerak (di perangkat).
Tetap kompatibel dengan versi platform yang lebih lama
Pertimbangkan cara menambahkan fitur versi platform Android baru ke aplikasi, sambil memastikan bahwa aplikasi masih bisa berjalan pada perangkat dengan versi platform yang lebih lama. Hal ini tidak akan bermanfaat untuk hanya fokus pada versi Android terbaru, karena tidak semua pengguna sudah meningkatkan versi atau dapat meningkatkan versi perangkat mereka.
Ketahui selengkapnya
- Cerita Android
- Panduan Android API, bagian "Kembangkan":
- Lainnya:
- Panduan Pengguna Android Studio: Image Asset Studio
- Wikipedia: Rangkuman Riwayat Versi Android